Modern networks and web-based applications frequently require user authentication before access may be granted. Often, each network or web application implements its own authentication scheme, frequently using a username and password combination. The result is that users are charged with remembering or securely storing a large number of credentials to access the systems they use. Single sign on (SSO) protocols provide users the ability to access different web applications using a single set of credentials. SSO protocols also allow web application providers the ability to have users authenticated by external systems.